package com.newtouch.bxzs.business.message.model.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 * PC通知详情BO
 *
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2020年12月14日</td>
 * <td>liman</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author liman
 *
 * @version 1.0.0
 * @since 1.0.0
 */

@Data
@ApiModel("PC通知详情BO")
public class NotificationDetailBO implements Serializable {

    private static final long serialVersionUID = -6320819216112622181L;

    @ApiModelProperty(value = "通知ID")
    private String notificationId;

    @ApiModelProperty(value = "通知编号")
    private String notificationCode;

    @ApiModelProperty(value = "通知名称")
    private String notificationName;

    @ApiModelProperty(value = "通知类型：1-公司通知；2-业务通知；3-系统通知；4-个人通知；")
    private String notificationType;

    @ApiModelProperty(value = "通知简介")
    private String notificationIntroduction;

    @ApiModelProperty(value = "通知内容")
    private String notificationContent;

    @ApiModelProperty(value = "发布时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date publishTime;

    @ApiModelProperty(value = "撤销时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date revokeTime;

    @ApiModelProperty(value = "发布状态：1-未发布；2-已发布；3-已结束；4-已取消；5-已撤销；")
    private String publishStatus;

    @ApiModelProperty(value = "通知附件列表")
    private List<NotificationAttachment> attachmentList;

    @ApiModelProperty(value = "接收人")
    private List<ReceiveUserBO> receivePerson;

    @ApiModelProperty(value = "接收人id")
    private String receiveUser;
}
